// 异步读取文件

const fs = require('fs');

console.log('--------异步读取文件 开始--------')
fs.readFile('04.txt', (err, data) => {
    if (err) {
        console.log('异步线程读取失败')
    } else {
        console.log('读取出来是Buffer')
        console.log(data.toString())
    }
    console.log('--------异步读取文件 结束--------')
})

// 同步读取文件
console.log('--------同步读取文件 开始--------')
let res = ''
try {
    res = fs.readFileSync('./0444.txt')
} catch (e) {
    res = '同步读取文件 失败'
}
console.log(res)
console.log('--------同步读取文件 结束--------')

// 流式读取文件
console.log('--------创建读取流 开始--------')
let rs = fs.createReadStream('04.stream.txt')
rs.on('data', (chunk) => {
    console.log(chunk.toString())
    console.log('chunk length:' + chunk.length)
    // 每次读取65536字节，也就是64KB
})
rs.on('end', () => {
    console.log('---------流式读取文件 完毕----------')
})
